package com.web_bloks.mvc.client;

/**
 * 
 * @author Jean-Lou Dupont
 *
 */
public interface IFacade {

	public void notifyObservers(INotification note);
	
	/**
	 * REGISTRATION Command
	 * 
	 * @param notificationName
	 * @param commandKlass
	 */
	public void registerCommand(INotification note, ICommand commandInstance);
	
	/**
	 * REGISTRATION Mediator
	 * 
	 * @param mediator
	 */
	public void 		registerMediator(IMediator mediator);
	public IMediator	retrieveMediator(String mediatorName);

	/**
	 * REGISTRATION Proxy
	 * 
	 * @param proxy
	 */
	public void		registerProxy(IProxy proxy);
	public IProxy	retrieveProxy(String proxyName);
	
	
}//